

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<script type="text/javascript" src="helpman_topicinit.js"></script>

<title>Create Custom Language Template [Enterprise Architect User Guide]</title>

<meta name="keywords" content="Enterprise Architect, Sparx Systems, UML, Code Template,Code Template Editor, Create Templates For Custom Languages,Custom Language,Custom Language Create Templates For In Code Template Editor,Language,Language Custom, Create Templates For In Code Template Editor">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />

<link type="text/css" href="default.css" rel="stylesheet" />
<style type="text/css">
  A, A:Visited
  {
    color: #00F;
  }

  A:Active, A:Hover
  {
    color: #F00;
  }

  OL
  {
    margin: 5px 0 5px 48px;
  }

  UL
  {
    margin-bottom: 3px;
    margin-top: 0;
  }

  #nsr
  {
    background-color: #D4DFFF;
  }

  #nsr A
  {
    text-decoration: none;
  }

  #mainbody
  {
    padding: 8px;
  }

  .p_BodyText
  {
    padding: 5px 0;
  }
</style>



<style type="text/css" media="screen">
  BODY
  {
    background-color: #FFFFFF;
  }

  #nsr
  {
    padding: 6px 6px 0 6px;
    border-bottom: none;
    vertical-align: top;
    z-index: 2;
    visibility: visible;
    left: 0;
    top: 0;
    position: absolute;
  }

  #mainbody
  {
    left: 0;
    top: 0;
    margin: 0;
    position: absolute;
    padding: 10px;
    overflow: auto;
    height: 100%;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: bottom right;
    background-attachment: fixed;
  }
</style>

<style type="text/css" media="print">
  #nsr
  {
    visibility: none;
  }

  #mainbody
  {
    overflow: visible;
  }
</style>
<script type="text/javascript" language="JavaScript" src="nonscroll.js"></script>

</head>
<body scroll="no">

<div id="page">



        <div id="content">
          <div id="content-inner">
          



  
          <div id="nsr">
            <table border="0" cellspacing="0" cellpadding="4" width="100%">
              <tr valign="top">
                <td align="left">
  


                  <p class="p_Heading1"><span class="f_Heading1">Create Custom Language Template</span></p>



  
                </td>
                <td align="right">
                  <a href="introduction.htm" onmouseover="document.images.main.src='button_main_h.gif'" onmouseout="document.images.main.src='button_main.gif'">
                    <img name="main" src="button_main.gif" border=0 alt="Return to Introduction">
                  </a>&nbsp;
    
                  <a href="addingnewstereotypedtemplat.htm" onmouseover="document.images.prev.src='button_prev_h.gif'" onmouseout="document.images.prev.src='button_prev.gif'">
                    <img name=prev src="button_prev.gif" border=0 alt="Previous page" />
                  </a>&nbsp;
    
    
    
                  <a href="addins_2.htm" onmouseover="document.images.next.src='button_next_h.gif'" onmouseout="document.images.next.src='button_next.gif'">
                    <img name=next src="button_next.gif" border=0 alt="Next page" />
                  </a>
    
    
                </td>
              </tr>
            </table>
          </div>
          <div id="mainbody">
  


                <p class="p_BodyText"><span class="f_BodyText">Enterprise Architect can forward generate code for languages that it does not specifically support, if the appropriate code generation templates are defined for that language. This topic outlines the steps required to define templates for custom languages.</span></p>
<p class="p_SubHeadingL1"><span class="f_SubHeadingL1">Define a Template for a Custom Language</span></p>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=1><span class="f_NumberedList">Create the custom language as a new product. To do this:</span></li>
</ol>
<ul style="text-indent: 0px; margin-left: 65px; list-style-position: outside;">
<li><span class="f_Bulletlist3">Select the </span><span class="f_MenuKeyField">Settings | Code Datatypes</span><span class="f_Bulletlist3"> menu option. The </span><span class="f_UIControl">Programming Languages Datatypes</span><span class="f_Bulletlist3"> dialog displays.</span></li>
<li><span class="f_Bulletlist3">In the </span><span class="f_MenuKeyField">Product Name</span><span class="f_Bulletlist3"> field type the name of the new language, and in the </span><span class="f_MenuKeyField">Datatype</span><span class="f_Bulletlist3"> field type a datatype (one is enough to declare that the new language exists). See the </span><span class="f_Bulletlist3" style="font-style: italic;"><a href="datatypes.htm">Data Types</a></span><span class="f_Bulletlist3"> topic in the </span><span class="f_Bulletlist3" style="font-style: italic;">Enterprise Architect User Guide </span><span class="f_Bulletlist3">for more details.</span></li>
</ul>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=2><span class="f_NumberedList">Select the </span><span class="f_MenuKeyField">Settings | Code Generation Templates</span><span class="f_NumberedList"> menu option. The </span><span class="f_UIControl">Code Templates Editor</span><span class="f_NumberedList"> view displays.</span></li>
<li value=3><span class="f_NumberedList">In the </span><span class="f_MenuKeyField">Language</span><span class="f_NumberedList"> field, click on the drop-down arrow and select the custom language.</span></li>
<li value=4><span class="f_NumberedList">From the </span><span class="f_UIControl">Templates</span><span class="f_NumberedList"> list, select one of the base templates.</span></li>
<li value=5><span class="f_NumberedList">Define the template using the </span><span class="f_UIControl">Code Templates Editor</span><span class="f_NumberedList">.</span></li>
<li value=6><span class="f_NumberedList">Click on the </span><span class="f_MenuKeyField">Save</span><span class="f_NumberedList"> button. This stores the template in the .EAP file.</span></li>
<li value=7><span class="f_NumberedList">Repeat steps 1 to 6 for each of the relevant base templates for the custom language.</span></li>
</ol>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 5px 0px 5px 13px;"><table cellspacing="0" cellpadding="2" border="0" style="border: none; border-spacing:0px;">
<tr style="text-align:left;vertical-align:bottom;">
<td valign="bottom" width="952" bgcolor="#efeff7" style="width:952px; background-color:#efeff7;"><p class="p_TiporNote" style="border-top: none; border-right: none; border-left: none;"><span class="f_TiporNote">Note:</span></p>
</td>
</tr>
<tr style="text-align:left;">
<td width="952" bgcolor="#f7f7ff" style="width:952px; background-color:#f7f7ff;"><p class="p_TiporNoteText"><span class="f_TiporNoteText">The </span><span class="f_TiporNoteText" style="font-style: italic;">File</span><span class="f_TiporNoteText"> template must be defined for the custom language. The </span><span class="f_TiporNoteText" style="font-style: italic;">File</span><span class="f_TiporNoteText"> template can then see the </span><span class="f_TiporNoteText" style="font-style: italic;">Import Section</span><span class="f_TiporNoteText">, </span><span class="f_TiporNoteText" style="font-style: italic;">Namespace</span><span class="f_TiporNoteText"> and </span><span class="f_TiporNoteText" style="font-style: italic;">Class</span><span class="f_TiporNoteText"> templates.</span></p>
</td>
</tr>
</table>
</div>




            </div>
          </div>
        </div>



</div>


</body>
</html>
